home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 19
/
Aminet 19 (1997)(GTI - Schatztruhe)[!][Jun 1997].iso
/
Aminet
/
comm
/
maxs
/
dfbv13.lha
/
dfb
/
install
< prev
next >
Wrap
Text File
|
1980-01-18
|
8KB
|
226 lines
;;;; DFB Installer install script, V1.0 for DFB release V1.3
;;;;
;;;;
;;;;
(procedure
copy-main-over
(copyfiles (source "")
(pattern "~(developers#?|DFBMakeKeyFile#?|REGISTERED_USERS_README#?)")
(dest "DFB:"))
(copyfiles (source "/DFB.info")
(dest "DFB:/"))
)
(procedure
copy-libraries
(copyfiles (source "libs")
(pattern "dfb.library")
(dest "libs:"))
)
(procedure
copy-c-drawer
(copyfiles (source "c")
(all)
(dest "C:"))
)
(procedure
copy-developers
(if (askbool (prompt "\nDo you want to " MODE " the developer's kit?\n")
(choices "Yes" "No")
(help "The developer's kit contains all the relevant includes\n"
"and documentation to help you code utilities for DFB.\n"
"Most users will not need this.\n"))
(copyfiles (source "")
(pattern "developers#?")
(dest "DFB:")))
)
(procedure
copy-readdfb
(set READDFBPATH (askdir ;; get read dfb's path
(default "DFB:")
(prompt "Please enter path where you keep ReadDFB:")
(help "The standard place is DFB:, but some people\n"
"move ReadDFB to BBS:Files/Door. If you are\n"
"unsure check these directories to see where\n"
"the file ReadDFB is.\n")))
(copyfiles (source "ReadDFB")
(dest READDFBPATH))
)
(procedure
install-dfb-login
(makedir "BBS:Doors/DFB")
(copyfiles (source "")
(pattern "(DFBLogin|pauseflagon)")
(dest "BBS:Doors/DFB"))
(textfile (dest "BBS:Doors/Introdoor.text") ;; Run DFBLogin automatically
(append "DFB/DFBLogin"))
)
(procedure
copy-files-over
(makeassign "DFB" DFBPATH)
(copy-main-over)
(install-dfb-login)
(if (= @user-level 2)
(if (askbool (prompt "\nInstall DFBLogin in your MAXsBBS user login ?\n")
(choices "Yes" "No")
(help "DFBLogin is the command which asks users to enter a\n"
"file description if when they uploaded the file they\n"
"didn't leave a file description. If you select Yes, I\n"
"will copy the file to your BBS:Doors/DFB directory\n"
"where it belongs and add it automatically to your\n"
"MAX's login file: BBS:Doors/Introdoor.text. This\n"
"means that each time a user enters your BBS, I will\n"
"make sure they've left file descriptions.\n"))
(install-dfb-login))
(install-dfb-login))
(copy-developers)
(copy-libraries)
(copy-c-drawer)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(procedure
install-dfb
(set MODE "install")
(message "INSTALLING DFB\n\n"
"This machine does not have DFB installed, this script\n"
"will handle the dos or file side of DFB. After this\n"
"script is run, you will still need to install the\n"
"MAX's side.\n")
(set DFBPATH (askdir ;; get path to install DFB to
(default "BBS:")
(prompt "Please enter path to install DFB to:")
(help "DFB needs a home directory to install its preference\n"
"commands, these are the GUI programmes which allow\n"
"you to interact with DFB.\n")
(newpath)))
(set DFBDATAPATH (askdir ;; get path to put dfbdata:dfb.data
(default "bbs:files/")
(prompt "Where do you want to keep DFB's file list?")
(help "This is DFB's masterlist of the files on your BBS\n"
"It is the equivelant to MAX's BBS:Files/File.data\n"
"This script will also keep DFB's copy of the userlist,\n"
"and its own preference settings here. If you want them\n"
"somewhere else you can modify them later on. See\n"
"manual.\n")
(newpath)))
(set DFBUSERPATH DFBDATAPATH) ;; straight copies of the above
(set DFBPREFSPATH DFBDATAPATH)
(set DFBTAGPATH (askdir ;; get path to keep tagged files
(default "ram:")
(prompt "Where do you want to keep the user's saved\n"
"tagged file lists?")
(help "DFB saves each user's tagged file lists when they\n"
"log off. If you want DFB to always remember them,\n"
"even after reset, change this directory to one on\n"
"your HD, e.g: " DFBDATAPATH)
(newpath)))
(set USERSTARTUP (cat "assign DFB: " DFBPATH "\n"
"assign DFBData: " DFBDATAPATH "\n"
"assign DFBUser: " DFBUSERPATH "\n"
"assign DFBPrefs: " DFBPREFSPATH "\n"
"assign DFBTag: " DFBTAGPATH "\n"
MAXSPATCH "\n"))
(makeassign "DFB" DFBPATH) ;; set up assigns NOW
(makeassign "DFBData" DFBDATAPATH)
(makeassign "DFBUser" DFBUSERPATH)
(makeassign "DFBPrefs" DFBPREFSPATH)
(makeassign "DFBTag" DFBTAGPATH)
(copy-files-over) ;; copy DFB files over
(startup app-name (command USERSTARTUP)
(prompt "Can I add some assigns to your user-startup?")
(help "If you select yes, I will set up your startup-\n"
"sequence so DFB's assigns are run everytime you\n"
"boot up your computer. Also I need to add MaxsPatch\n"
"to make MAX's screens public and use new WB 2 pens.\n")
) ;; add lines to startup
(if (= @user-level 2)
(if (askbool (prompt "\nRun DFBPrefs to initiailize DFB now?\n")
(choices "Yes" "No")
(help "DFBPrefs is the main preferences programme for DFB\n"
"When you run it for the first time, it will create\n"
"DFB's data and get it ready to be run from MAX's.\n"
"Make sure you enter DFBArchivers and fix those\n"
"entries if you want to use file_id.diz's. Also\n"
"you should make sure the 'Use File_id.dizs' flag is\n"
"correctly set and you have chosen whether to use\n"
"byte, file or credit ratios.\n"))
((run "DFB:DFBPrefs")
(set ran-prefs 1)))
((run "DFB:DFBPrefs")
(set ran-prefs 1)))
(if (= ran-prefs 1)
(message "DFB is now installed on your HD and also DFB\n"
"is set up, but to use DFB you still need to tell\n"
"MAX's BBS to run DFB. You do this by going into\n"
"MAX's and changing your menu items to\n"
"DFB:ReadDFB <args>. For more information see\n"
"the manual.\n")
(message "DFB is now installed on your HD, to fully\n"
"install it, you need to run DFBPrefs and also\n"
"tell MAX's BBS to run DFB. You do this by going\n"
"into MAX's and changing your menu items to\n"
"DFB:ReadDFB <args>. For more information see\n"
"the manual.\n"))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(procedure
update-dfb
(set MODE "update")
(message "\nUPDATING DFB\n\n"
"This machine already has DFB installed, so I will\n"
"update you to the latest files. If this is in error\n"
"and DFB is not fully installed, abort installation\n"
"and delete your DFBPrefs:dfb.prefs file and restart\n"
"the installation.")
(copy-main-over)
(copy-c-drawer)
(copy-readdfb)
(copy-developers)
(startup app-name (command MAXSPATCH)
(prompt "Now in DFB V1.3, you need to run a command called\n"
"MaxsPatch. Can I add it to your startup-sequence?\n")
(help "If you select yes, I will add MaxsPatch to make\n"
"MAX's screens public and use new WB 2 pens.\n")
) ;; add line to startup
(if (not (exists "DFB:Registration.key"))
(if (askbool (prompt "\nYou don't have a keyfile! Either this is because\n"
"you haven't registered DFB or you are updating from\n"
"an old version of DFB. If you are updating from an\n"
"older version of DFB I can create the new registered\n"
"library from the current version. Do you want me to?\n")
(choices "Yes" "No")
(help "DFB now uses a keyfile system to see who has registered.\n"
"If you don't have a keyfile and haven't registered,\n"
"select No. This will only work if you have registered.\n"
"If you have registered, your old library will help create\n"
"a keyfile for you. You *must* select Yes if you have an\n"
"old registered library but no keyfile, otherwise your\n"
"registered library will be overwritten!"))
(run "DFBMakeKeyFile"))
)
(copy-libraries)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(welcome "Welcome to DFB V1.3 installer/updater.\n")
(set app-name "DFB V1.3")
(set APPNAME "DFB V1.3")
(set MAXSPATCH "DFB:MaxsPatch >NIL: ; This line *must* come before MAXsBBS is run")
(if (exists "DFBPrefs:DFB.prefs" (noreq))
(update-dfb)
(install-dfb))
(exit (quiet))
; EOF